Typical data storage elements used in semiconductor devices may include volatile storage elements such as dynamic random access memory (DRAM) and static random access memory (SRAM), and non-volatile storage elements such as a flash memory and an EEPROM. A volatile storage element is capable of writing and reading data at a high speed, but lacks capability for data retention persisting through a loss or stoppage of power. Non-volatile storage elements are capable of persistent data retention, but typical write and read speeds are slower than those of volatile storage elements.
In general, a volatile storage element is suitable for applications of fast data processing while the power is turned on; meanwhile, a non-volatile storage element is suitable for applications for storing data for a long time, even when the power is turned off. In order to take respective advantages of these two storage elements, a semiconductor device provided with both volatile storage elements and non-volatile storage elements and having a configuration of exchanging data between the respective storage elements according to operation status has been developed. Japanese Patent Application Publications Nos. JP-A-2006-295130 and JP-A-2006-302466 disclose examples of such semiconductor devices.
A semiconductor device having a storage element which stores data by variations in resistivity of a variable resistance has been developed. For example, Japanese Patent Application Publication No. JP-A-2007-59918 discloses a semiconductor device provided with a storage element having a phase-change layer.
In the semiconductor devices disclosed in JP-A-2006-295130 and in JP-A-2006-302466, volatile storage elements and non-volatile storage elements are separately provided. Therefore, as space for providing both types of the respective storage elements is required, miniaturization of the semiconductor device is difficult.